﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;

namespace TSOL.FastSPWeb.ValueObjects
{
    interface IFastSPUpdateException
    {
        Guid ActionID {get; set;}
        string UserUniqueID { get; set; }
        SPUserToken UserToken { get; set; }
        Guid SiteGuid { get; set; }
        Guid WebGuid { get; set; }
        FastUpdateAction Action {get; set;}
        List<Exception> ActionExceptionList {get; set;}
    }

    class FastSPUpdateExceptionEntity : IFastSPUpdateException
    {
        public Guid ActionID { get; set; }
        public string UserUniqueID { get; set; }
        public SPUserToken UserToken { get; set; }
        public Guid SiteGuid { get; set; }
        public Guid WebGuid { get; set; }
        public Guid ListGuid { get; set; }
        public SPItem Item { get; set; }
        public FastUpdateAction Action { get; set; }
        public List<Exception> ActionExceptionList { get; set; }
    }

    class FastCreateSubWebExceptionEntity : IFastSPUpdateException
    {
        public Guid ActionID { get; set; }
        public string UserUniqueID { get; set; }
        public SPUserToken UserToken { get; set; }
        public Guid SiteGuid { get; set; }
        public Guid WebGuid { get; set; }
        public FastUpdateAction Action { get; set; }
        public List<Exception> ActionExceptionList { get; set; }
        public string WebUrl { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
        public uint LCDID { get; set; }
        public string WebTemplateName { get; set; }
        public bool UseUniquePermissions { get; set; }
        public bool ConvertIfThere { get; set; }
    }
}
